package com.dragon.app.ykd.dto;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

import org.apache.commons.lang3.StringUtils;

import com.dragon.app.commons.dto.AttachmentPictureDTO;
import com.dragon.loan.entity.AcLoanApplyInfo;
import com.dragon.loan.entity.AcLoanApplyLinkman;

public class UserDataDTO implements Serializable{
	private static final long serialVersionUID = 1L;

	private String educationLevelId;
	private String loanId;
	private String marriageId;
	private String mateName;
	private String mateMobile;
	private String hasChild;
	private String provinceId;
	private String cityId;
	private String areaId;
	private String address;
	private String liveTypeId;
	private String workTypeId;
	private String companyName;
	private String companyProvinceId;
	private String companyCityId;
	private String companyAreaId;
	private String workYearsId;
	private String companyAddress;
	private String officePhone;
	private List<AcLoanApplyLinkman> acLoanApplyLinkmans;
	private String socialSecurityStatus;
	private String accumulationFundStatus;  
	private String officeSpaceType;  
	private Date getLinkmanDataTime;
	
	private String workType; // 一级
	private String secondWorkType; // 二级
	private String thirdWorkType; // 三级
	private String email;           
	private String weixingNo;    
	private String qqNo; 
	private String xinlangWbNo; 
	private String positionType;
	private String positionName;
	private String monthlyIncomeId;//	         月收入类型Id	String	Y	
	
	private List<AttachmentPictureDTO> workCertificates;
	
	private List<AttachmentPictureDTO> useCertificates;//用途证明
	
	private String usedId;
	private String usedName;
	
	public void clone(AcLoanApplyInfo acLoanApplyInfo) {
		if(getCompanyName() != null)
		  acLoanApplyInfo.setCompanyName(getCompanyName());
		if(getLoanId() != null)
		  acLoanApplyInfo.setLoanId(getLoanId());
		if(getUsedName() != null)
		  acLoanApplyInfo.setUsedName(getUsedName());
		if(getWorkTypeId() != null)
		  acLoanApplyInfo.setWorkTypeId(getWorkTypeId());
		if(getAcLoanApplyLinkmans() != null)
		  acLoanApplyInfo.setAcLoanApplyLinkmans(getAcLoanApplyLinkmans());
		if(getPositionName() != null)
		  acLoanApplyInfo.setPositionName(getPositionName());
		if(getQqNo() != null)
		  acLoanApplyInfo.setQqNo(getQqNo());
		if(getWeixingNo() != null)
		  acLoanApplyInfo.setWeixingNo(getWeixingNo());
		if(getEmail() != null)
		  acLoanApplyInfo.setEmail(getEmail());
		if(getXinlangWbNo() != null)
		  acLoanApplyInfo.setXinlangWbNo(getXinlangWbNo());
		if(getSocialSecurityStatus() != null)
		  acLoanApplyInfo.setSocialSecurityStatus(getSocialSecurityStatus());
		if(getThirdWorkType() != null)
		  acLoanApplyInfo.setThirdWorkType(getThirdWorkType());
		if(getSecondWorkType() != null)
		  acLoanApplyInfo.setSecondWorkType(getSecondWorkType());
		if(getAccumulationFundStatus() != null)
		  acLoanApplyInfo.setAccumulationFundStatus(getAccumulationFundStatus());
		if(getOfficeSpaceType() != null)
		  acLoanApplyInfo.setOfficeSpaceType(getOfficeSpaceType());
		if(getCompanyAreaId() != null)
		  acLoanApplyInfo.setCompanyAreaId(getCompanyAreaId());
		if(getCompanyAddress() != null)
		  acLoanApplyInfo.setCompanyAddress(getCompanyAddress());
		if(getMonthlyIncomeId() != null)
		  acLoanApplyInfo.setMonthlyIncomeId(getMonthlyIncomeId());
		if(getOfficePhone() != null)
		  acLoanApplyInfo.setOfficePhone(getOfficePhone());
		if(getCompanyProvinceId() != null)
		  acLoanApplyInfo.setCompanyProvinceId(getCompanyProvinceId());
		if(getCompanyCityId() != null)
		  acLoanApplyInfo.setCompanyCityId(getCompanyCityId());
		if(getPositionType() != null)
		  acLoanApplyInfo.setPositionType(getPositionType());
		if(getEducationLevelId() != null)
		  acLoanApplyInfo.setEducationLevelId(getEducationLevelId());
		if(getWorkYearsId() != null)
		  acLoanApplyInfo.setWorkYearsId(getWorkYearsId());
		if(getHasChild() != null)
		  acLoanApplyInfo.setHasChild(getHasChild());
		if(getMateName() != null)
		  acLoanApplyInfo.setMateName(getMateName());
		if(getUsedId() != null)
		  acLoanApplyInfo.setUsedId(getUsedId());
		if(getProvinceId() != null)
		  acLoanApplyInfo.setProvinceId(getProvinceId());
		if(getAddress() != null)
		  acLoanApplyInfo.setAddress(getAddress());
		if(getLiveTypeId() != null)
		  acLoanApplyInfo.setLiveTypeId(getLiveTypeId());
		if(getAreaId() != null)
		  acLoanApplyInfo.setAreaId(getAreaId());
		if(getMateMobile() != null)
		  acLoanApplyInfo.setMateMobile(getMateMobile());
		if(getWorkType() != null)
		  acLoanApplyInfo.setWorkType(getWorkType());
		if(getMarriageId() != null)
		  acLoanApplyInfo.setMarriageId(getMarriageId());
		if(getCityId() != null)
		  acLoanApplyInfo.setCityId(getCityId());

	}
	
	public void fill(AcLoanApplyInfo acLoanApplyInfo) {
		if(StringUtils.isNotBlank(acLoanApplyInfo.getCompanyName()))
		  setCompanyName(acLoanApplyInfo.getCompanyName());
		if(acLoanApplyInfo.getLoanId() != null)
		  setLoanId(acLoanApplyInfo.getLoanId());
		if(acLoanApplyInfo.getUsedName() != null)
		  setUsedName(acLoanApplyInfo.getUsedName());
		if(acLoanApplyInfo.getWorkTypeId() != null)
		  setWorkTypeId(acLoanApplyInfo.getWorkTypeId());
		if(acLoanApplyInfo.getAcLoanApplyLinkmans() != null)
		  setAcLoanApplyLinkmans(acLoanApplyInfo.getAcLoanApplyLinkmans());
		if(acLoanApplyInfo.getPositionName() != null)
		  setPositionName(acLoanApplyInfo.getPositionName());
		if(acLoanApplyInfo.getQqNo() != null)
		  setQqNo(acLoanApplyInfo.getQqNo());
		if(acLoanApplyInfo.getWeixingNo() != null)
		  setWeixingNo(acLoanApplyInfo.getWeixingNo());
		if(acLoanApplyInfo.getEmail() != null)
		  setEmail(acLoanApplyInfo.getEmail());
		if(acLoanApplyInfo.getXinlangWbNo() != null)
		  setXinlangWbNo(acLoanApplyInfo.getXinlangWbNo());
		if(acLoanApplyInfo.getSocialSecurityStatus() != null)
		  setSocialSecurityStatus(acLoanApplyInfo.getSocialSecurityStatus());
		if(acLoanApplyInfo.getThirdWorkType() != null)
		  setThirdWorkType(acLoanApplyInfo.getThirdWorkType());
		if(acLoanApplyInfo.getSecondWorkType() != null)
		  setSecondWorkType(acLoanApplyInfo.getSecondWorkType());
		if(getAccumulationFundStatus() != null)
		  setAccumulationFundStatus(getAccumulationFundStatus());
		if(acLoanApplyInfo.getOfficeSpaceType() != null)
		  setOfficeSpaceType(acLoanApplyInfo.getOfficeSpaceType());
		if(acLoanApplyInfo.getCompanyAreaId() != null)
		  setCompanyAreaId(acLoanApplyInfo.getCompanyAreaId());
		if(acLoanApplyInfo.getCompanyAddress() != null)
		  setCompanyAddress(acLoanApplyInfo.getCompanyAddress());
		if(acLoanApplyInfo.getMonthlyIncomeId() != null)
		  setMonthlyIncomeId(acLoanApplyInfo.getMonthlyIncomeId());
		if(acLoanApplyInfo.getOfficePhone() != null)
		  setOfficePhone(acLoanApplyInfo.getOfficePhone());
		if(acLoanApplyInfo.getCompanyProvinceId() != null)
		  setCompanyProvinceId(acLoanApplyInfo.getCompanyProvinceId());
		if(acLoanApplyInfo.getCompanyCityId() != null)
		  setCompanyCityId(acLoanApplyInfo.getCompanyCityId());
		if(acLoanApplyInfo.getPositionType() != null)
		  setPositionType(acLoanApplyInfo.getPositionType());
		if(acLoanApplyInfo.getEducationLevelId() != null)
		  setEducationLevelId(acLoanApplyInfo.getEducationLevelId());
		if(acLoanApplyInfo.getWorkYearsId() != null)
		  setWorkYearsId(acLoanApplyInfo.getWorkYearsId());
		if(acLoanApplyInfo.getHasChild() != null)
		  setHasChild(acLoanApplyInfo.getHasChild());
		if(acLoanApplyInfo.getMateName() != null)
		  setMateName(acLoanApplyInfo.getMateName());
		if(acLoanApplyInfo.getUsedId() != null)
		  setUsedId(acLoanApplyInfo.getUsedId());
		if(acLoanApplyInfo.getProvinceId() != null)
		  setProvinceId(acLoanApplyInfo.getProvinceId());
		if(acLoanApplyInfo.getAddress() != null)
		  setAddress(acLoanApplyInfo.getAddress());
		if(acLoanApplyInfo.getLiveTypeId() != null)
		  setLiveTypeId(acLoanApplyInfo.getLiveTypeId());
		if(acLoanApplyInfo.getAreaId() != null)
		  setAreaId(acLoanApplyInfo.getAreaId());
		if(acLoanApplyInfo.getMateMobile() != null)
		  setMateMobile(acLoanApplyInfo.getMateMobile());
		if(acLoanApplyInfo.getWorkType() != null)
		  setWorkType(acLoanApplyInfo.getWorkType());
		if(acLoanApplyInfo.getMarriageId() != null)
		  setMarriageId(acLoanApplyInfo.getMarriageId());
		if(acLoanApplyInfo.getCityId() != null)
		  setCityId(acLoanApplyInfo.getCityId());

	}
	
	public String getUsedId() {
		return usedId;
	}

	public void setUsedId(String usedId) {
		this.usedId = usedId;
	}

	public String getUsedName() {
		return usedName;
	}

	public void setUsedName(String usedName) {
		this.usedName = usedName;
	}

	public List<AttachmentPictureDTO> getUseCertificates() {
		return useCertificates;
	}

	public void setUseCertificates(List<AttachmentPictureDTO> useCertificates) {
		this.useCertificates = useCertificates;
	}

	public List<AttachmentPictureDTO> getWorkCertificates() {
		return workCertificates;
	}

	public void setWorkCertificates(List<AttachmentPictureDTO> workCertificates) {
		this.workCertificates = workCertificates;
	}

	public String getMonthlyIncomeId() {
		return monthlyIncomeId;
	}

	public void setMonthlyIncomeId(String monthlyIncomeId) {
		this.monthlyIncomeId = monthlyIncomeId;
	}

	public String getPositionType() {
		return positionType;
	}

	public void setPositionType(String positionType) {
		this.positionType = positionType;
	}

	public String getPositionName() {
		return positionName;
	}

	public void setPositionName(String positionName) {
		this.positionName = positionName;
	}

	public String getEmail() {
		return email;
	}

	public void setEmail(String email) {
		this.email = email;
	}

	public String getWeixingNo() {
		return weixingNo;
	}

	public void setWeixingNo(String weixingNo) {
		this.weixingNo = weixingNo;
	}

	public String getQqNo() {
		return qqNo;
	}

	public void setQqNo(String qqNo) {
		this.qqNo = qqNo;
	}

	public String getXinlangWbNo() {
		return xinlangWbNo;
	}

	public void setXinlangWbNo(String xinlangWbNo) {
		this.xinlangWbNo = xinlangWbNo;
	}

	public String getWorkType() {
		return workType;
	}

	public void setWorkType(String workType) {
		this.workType = workType;
	}

	public String getSecondWorkType() {
		return secondWorkType;
	}

	public void setSecondWorkType(String secondWorkType) {
		this.secondWorkType = secondWorkType;
	}

	public String getThirdWorkType() {
		return thirdWorkType;
	}

	public void setThirdWorkType(String thirdWorkType) {
		this.thirdWorkType = thirdWorkType;
	}

	public Date getGetLinkmanDataTime() {
		return getLinkmanDataTime;
	}

	public void setGetLinkmanDataTime(Date getLinkmanDataTime) {
		this.getLinkmanDataTime = getLinkmanDataTime;
	}

	public String getSocialSecurityStatus() {
		return socialSecurityStatus;
	}

	public void setSocialSecurityStatus(String socialSecurityStatus) {
		this.socialSecurityStatus = socialSecurityStatus;
	}

	public String getAccumulationFundStatus() {
		return accumulationFundStatus;
	}

	public void setAccumulationFundStatus(String accumulationFundStatus) {
		this.accumulationFundStatus = accumulationFundStatus;
	}

	public String getOfficeSpaceType() {
		return officeSpaceType;
	}

	public void setOfficeSpaceType(String officeSpaceType) {
		this.officeSpaceType = officeSpaceType;
	}

	public String getLoanId() {
		return loanId;
	}

	public void setLoanId(String loanId) {
		this.loanId = loanId;
	}

	public String getEducationLevelId() {
		return educationLevelId;
	}

	public void setEducationLevelId(String educationLevelId) {
		this.educationLevelId = educationLevelId;
	}

	public String getMarriageId() {
		return marriageId;
	}

	public void setMarriageId(String marriageId) {
		this.marriageId = marriageId;
	}

	public String getMateName() {
		return mateName;
	}

	public void setMateName(String mateName) {
		this.mateName = mateName;
	}

	public String getMateMobile() {
		return mateMobile;
	}

	public void setMateMobile(String mateMobile) {
		this.mateMobile = mateMobile;
	}

	public String getHasChild() {
		return hasChild;
	}

	public void setHasChild(String hasChild) {
		this.hasChild = hasChild;
	}

	public String getProvinceId() {
		return provinceId;
	}

	public void setProvinceId(String provinceId) {
		this.provinceId = provinceId;
	}

	public String getCityId() {
		return cityId;
	}

	public void setCityId(String cityId) {
		this.cityId = cityId;
	}

	public String getAreaId() {
		return areaId;
	}

	public void setAreaId(String areaId) {
		this.areaId = areaId;
	}

	public String getAddress() {
		return address;
	}

	public void setAddress(String address) {
		this.address = address;
	}

	public String getLiveTypeId() {
		return liveTypeId;
	}

	public void setLiveTypeId(String liveTypeId) {
		this.liveTypeId = liveTypeId;
	}

	public String getWorkTypeId() {
		return workTypeId;
	}

	public void setWorkTypeId(String workTypeId) {
		this.workTypeId = workTypeId;
	}

	public String getCompanyName() {
		return companyName;
	}

	public void setCompanyName(String companyName) {
		this.companyName = companyName;
	}

	public String getCompanyProvinceId() {
		return companyProvinceId;
	}

	public void setCompanyProvinceId(String companyProvinceId) {
		this.companyProvinceId = companyProvinceId;
	}

	public String getCompanyCityId() {
		return companyCityId;
	}

	public void setCompanyCityId(String companyCityId) {
		this.companyCityId = companyCityId;
	}

	public String getCompanyAreaId() {
		return companyAreaId;
	}

	public void setCompanyAreaId(String companyAreaId) {
		this.companyAreaId = companyAreaId;
	}

	public String getWorkYearsId() {
		return workYearsId;
	}

	public void setWorkYearsId(String workYearsId) {
		this.workYearsId = workYearsId;
	}

	public String getCompanyAddress() {
		return companyAddress;
	}

	public void setCompanyAddress(String companyAddress) {
		this.companyAddress = companyAddress;
	}

	public String getOfficePhone() {
		return officePhone;
	}

	public void setOfficePhone(String officePhone) {
		this.officePhone = officePhone;
	}

	public List<AcLoanApplyLinkman> getAcLoanApplyLinkmans() {
		return acLoanApplyLinkmans;
	}

	public void setAcLoanApplyLinkmans(List<AcLoanApplyLinkman> acLoanApplyLinkmans) {
		this.acLoanApplyLinkmans = acLoanApplyLinkmans;
	}

	@Override
	public String toString() {
		return "UserDataDTO [educationLevelId=" + educationLevelId + ", loanId=" + loanId + ", marriageId=" + marriageId
				+ ", mateName=" + mateName + ", mateMobile=" + mateMobile + ", hasChild=" + hasChild + ", provinceId="
				+ provinceId + ", cityId=" + cityId + ", areaId=" + areaId + ", address=" + address + ", liveTypeId="
				+ liveTypeId + ", workTypeId=" + workTypeId + ", companyName=" + companyName + ", companyProvinceId="
				+ companyProvinceId + ", companyCityId=" + companyCityId + ", companyAreaId=" + companyAreaId
				+ ", workYearsId=" + workYearsId + ", companyAddress=" + companyAddress + ", officePhone=" + officePhone
				+ ", acLoanApplyLinkmans=" + acLoanApplyLinkmans + ", socialSecurityStatus=" + socialSecurityStatus
				+ ", accumulationFundStatus=" + accumulationFundStatus + ", officeSpaceType=" + officeSpaceType
				+ ", getLinkmanDataTime=" + getLinkmanDataTime + ", workType=" + workType + ", secondWorkType="
				+ secondWorkType + ", thirdWorkType=" + thirdWorkType + "]";
	}

}
